/**
描述
  编写一个函数，计算字符串中含有的不同字符的个数。字符在 ASCII 码范围内( 0~127 ，包括 0 和 127 )，换行表示结束符，不算在字符里。不在范围内的不作统计。多个相同的字符只计算一次
  例如，对于字符串 abaca 而言，有 a、b、c 三种不同的字符，因此输出 3 。

  输入描述：
  输入一行没有空格的字符串。

  输出描述：
  输出 输入字符串 中范围在(0~127，包括0和127)字符的种数。

  示例1
  输入：abc
  输出：3

  示例2
  输入：aaa
  输出：1
*/
const readline = require('readline')
const rl = readline.createInterface({
  input:process.stdin,
  output:process.stdout
})

function transform(inputStr) {
  if (!inputStr) return
  // 转数组
  const inputArr = inputStr.split('')
  // 去重
  const setArr = Array.from(new Set(inputArr))
  // 统计个数
  console.log(setArr.length)  
}

// 本地测试
// let inputStr = 'aaa'
// transform(inputStr)

// 提交测试
rl.on('line', (line) => {
  if (line) {
    // 处理接收
    transform(line)
  }
})